DIFFUSER_CONICAL

Overview

Calculate the loss coefficient (K) for a conical pipe expansion (diffuser).

Excel Usage

=DIFFUSER_CONICAL(Di_small, Di_large, angle, Re, diff_con_method)
  • Di_small (float, required): Inside diameter of original (smaller) pipe [m]
  • Di_large (float, required): Inside diameter of following (larger) pipe [m]
  • angle (float, required): Angle of expansion [degrees]
  • Re (float, optional, default: 1000000): Reynolds number of the pipe flow [-]
  • diff_con_method (str, optional, default: “Rennels”): Calculation method

Returns (float): Loss coefficient K for the conical diffuser [-]

Examples

Example 1: Basic conical diffuser at 50 degrees

Inputs:

Di_small Di_large angle Re
0.333 1 50 1000000

Excel formula:

=DIFFUSER_CONICAL(0.333, 1, 50, 1000000)

Expected output:

Result
0.8031

Example 2: Small angle diffuser (10 degrees)

Inputs:

Di_small Di_large angle Re
0.1 0.2 10 100000

Excel formula:

=DIFFUSER_CONICAL(0.1, 0.2, 10, 100000)

Expected output:

Result
0.0899

Example 3: Conical diffuser with Crane method

Inputs:

Di_small Di_large angle Re diff_con_method
0.333 1 50 1000000 Crane

Excel formula:

=DIFFUSER_CONICAL(0.333, 1, 50, 1000000, "Crane")

Expected output:

Result
0.7905

Example 4: Conical diffuser with Swamee method

Inputs:

Di_small Di_large angle Re diff_con_method
0.333 1 50 1000000 Swamee

Excel formula:

=DIFFUSER_CONICAL(0.333, 1, 50, 1000000, "Swamee")

Expected output:

Result
1.8218

Python Code

import micropip
await micropip.install(["fluids"])
from fluids.fittings import diffuser_conical as fluids_diffuser_conical

def diffuser_conical(Di_small, Di_large, angle, Re=1000000, diff_con_method='Rennels'):
    """
    Calculate the loss coefficient (K) for a conical pipe expansion (diffuser).

    See: https://fluids.readthedocs.io/fluids.fittings.html#fluids.fittings.diffuser_conical

    This example function is provided as-is without any representation of accuracy.

    Args:
        Di_small (float): Inside diameter of original (smaller) pipe [m]
        Di_large (float): Inside diameter of following (larger) pipe [m]
        angle (float): Angle of expansion [degrees]
        Re (float, optional): Reynolds number of the pipe flow [-] Default is 1000000.
        diff_con_method (str, optional): Calculation method Valid options: Rennels, Crane, Miller, Swamee, Idelchik, Hooper. Default is 'Rennels'.

    Returns:
        float: Loss coefficient K for the conical diffuser [-]
    """
    try:
        Di1 = float(Di_small)
        Di2 = float(Di_large)
        angle = float(angle)
        Re = float(Re)
    except (ValueError, TypeError):
        return "Error: All parameters must be numbers."

    if Di1 <= 0 or Di2 <= 0:
        return "Error: Diameters must be positive."
    if Di1 >= Di2:
        return "Error: Di_small must be less than Di_large."
    if angle <= 0 or angle > 180:
        return "Error: Angle must be between 0 and 180 degrees."
    if Re <= 0:
        return "Error: Re must be positive."

    try:
        result = fluids_diffuser_conical(Di1=Di1, Di2=Di2, angle=angle, Re=Re, method=diff_con_method)
        return float(result)
    except Exception as e:
        return f"Error: {str(e)}"

Online Calculator